package com.atguigu.principle.liskov.improve;

/**
 * @program: design-patterns
 * @author: yangshen
 * @description:
 *          1. B类继承了Base.java基类
 *          2. 增加了一个新功能：完成两个数相加,然后和9求和
 * @create: 2022-01-10 22:45
 **/
public class B extends Base {
    /**
     * 如果B需要使用A类的方法,使用组合关系
     */
    private final A a = new A();

    /**
     * @param a 数值a
     * @param b 数值b
     * @return a + b
     */
    public int func1(int a, int b){
        return a + b;
    }

    public int func2(int a, int b){
        return (a + b) + 9;
    }

    /**
     * 我们仍然想使用A的方法（使用组合关系）
     * @param a 数值a
     * @param b 数值b
     * @return a-b
     */
    public int func3(int a, int b){
        return this.a.func1(a, b);
    }

}
